/*--------------------------------*- C++ -*----------------------------------*\
  | =========                 |                                                 |
  | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
  |  \\    /   O peration     | Version:  2.3.0                                 |
  |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
  |    \\/     M anipulation  |                                                 |
  \*---------------------------------------------------------------------------*/
FoamFile
{
  version     2.0;
  format      ascii;
  class       dictionary;
  object      blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

convertToMeters 1;

H   20.0;
R   20.0;

cellSize 1;

nx  #calc "round($R/$cellSize)";
ny  #calc "round($H/$cellSize)";

x #calc "$R*cos(5.0*Foam::constant::mathematical::pi/180)";
z #calc "$R*sin(5.0*Foam::constant::mathematical::pi/180)";
nz #calc "-$R*sin(5.0*Foam::constant::mathematical::pi/180)";
vertices
(
    (0 0 0)
    ($x 0 $nz)
    ($x $H  $nz)
    (0 $H 0)
    ($x 0 $z)
    ($x $H  $z)
    (0 $H 1)
);

blocks
(
    hex (0 1 2 3 0 4 5 3) ($nx $ny 1) simpleGrading (1 1 1)
);

edges
(
);

boundary
(
    ground
    {
        type patch;
        faces
        (
            (0 1 4 0)
        );
    }
    outlet
    {
        type patch;
        faces
        (
            (1 2 5 4)
            (3 2 5 3)
        );
    }
    wedge0
    {
        type wedge;
        faces
        (
            (0 1 2 3)
        );
    }
    wedge1
    {
        type wedge;
        faces
        (
            (0 4 5 3)
        );
    }
 );

mergePatchPairs
(
);

// ************************************************************************* //
